package com.csun.cmny.provider.dao;

import com.csun.cmny.provider.model.domain.DmcCsunSleepDataInBed;
import com.csun.cmny.provider.model.dto.app.AppSleepDateQueryDto;
import com.csun.cmny.provider.model.dto.csunsleep.CsunSleepDataInBedQueryDto;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface DmcCsunSleepDataInBedMapper extends Mapper<DmcCsunSleepDataInBed> {

    /**
     * 条件查询在床数据
     * @param: [csunSleepDataInBedQueryDto]
     * @return: java.util.List<com.csun.cmny.provider.model.domain.DmcCsunSleepDataInBed>
     */
    List<DmcCsunSleepDataInBed> queryCsunSleepDataInBedList(CsunSleepDataInBedQueryDto csunSleepDataInBedQueryDto);

    /**
     * 根据设备id查询最近的一条在床数据
     * @param: [deviceId]
     * @return: com.csun.cmny.provider.model.domain.DmcCsunSleepDataInBed
     */
    DmcCsunSleepDataInBed getLatestInBedData(@Param("deviceId") Long deviceId);

    /**
     * 统计离床报警次数
     * @param: [appSleepDateQueryDto]
     * @return: java.lang.Integer
     */
    Integer countLeaveBedAlertTimes(AppSleepDateQueryDto appSleepDateQueryDto);
}